Part Number Hot Search : 
ADF4208 8062A PM139AY 75000 28274 2SB106 74AC14 RN1632A
Product Description
Full Text Search
 

To Download GL310MC2D Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  genesys logic, inc. july 16, 1998 july 16, 1998 genesys logic, inc. 10f ., no.11, ln.3, tsao ti wei, shenkeng, taipei, taiwan, r.o.c. tel :886-2-2664-6655 fax:886-2-2664-5757 http://www.genesyslogic.com.tw
revision 1.0 july/16/1998 1 gl310mc ps/2 2d mouse controller 1. features l low-cost solution for ps/2 2d mouse l middle button can act as 3d middle button(scrolling function) l i/o ports - 4 special purpose i/o pins optimized for photo-sensor - 2 i/o pins with led drive capability l patent pending full-range detection for photo-sensor - removes the expensive process of matching led and photo-sensor - improve end-product yield rate almost to 100% - huge cost saving l r-c oscillator - no expensive crystal oscillator required - reduce bom l improved output drivers with slew-rate control to reduce emi l minimal external components(2r + 2c) required for application circuit l tracking speed - up to 100 m s/per sampling l 6 mhz external clock l internal power-on reset(por) l available in cost saving 16-pin pdip
revision 1.0 july/16/1998 2 gl310mc ps/2 2d mouse controller 2. pin configuration figure 2-1. 16-pin dip pin no. symbol i/o description 1 x1 i photo sensor input for x axis 1 2 x2 i photo sensor input for x axis 2 3 y1 i photo sensor input for y axis 1 4 y2 i photo sensor input for y axis 2 5 lb i mouse left button, internal pulled high 6 mb i mouse middle button, internal pulled high 7 rb i mouse right button, internal pulled high 8 gnd ground ground 9 ps2clk i/o ps/2 mouse clock 10 ps2dat i/o ps/2 mouse data 11 nc 12 nc 13 nc 14 nc 15 clk clock 6mhz rc clock input 16 vdd power power vdd clk nc nc nc nc ps2dat ps2clk x1 x2 y1 y2 lb mb rb gnd 1 16 2 15 3 14 4 13 5 12 6 11 7 10 8 9
revision 1.0 july/16/1998 3 gl310mc ps/2 2d mouse controller 3. ps/2 protocol the ps/2 protocol allows synchronous , bi-directional serial communication between the host and the device. either side may transmit a command or data byte at any time, although only one side can transmit at one time. during initialization, the host sends command bytes to the device. some commands are followed by argument bytes. the device acknowledges each command and argument byte with an ack ($fa) byte, possibly followed by one or more data bytes. if the host has enabled "stream mode" transmission, then the device may send spontaneous data packets to the host describing finger motions and button state changes. 3.1 electrical interface the ps/2 protocol includes two signal wires as well as +5v power and ground. the signal wires, clk and data, are bi-directional "open-collector" signals; they are normally held at a high (+5v) level by a 5-10k pull-up resistor on the host, but either the host or the mouse device can pull them low at any time. when the port is idle, both signal wires are floating high. the host can inhibit the device at any time by holding the clk wire low. note that neither side ever actively pulls clk or data high; to output a logic 1, the wire is left undriven and allowed to float high. the following diagram shows the interconnections between the host and the ps/2 mouse device: 3.2 byte transmission each byte transmitted between the device and the host includes a start bit ( a logic 0), eight data bits (lsb first), a parity bit (odd parity), and a stop bit (a logic 1). odd parity means the eight data bits and the parity bit together contain an odd number of 1's . during transmission , the device pulses the clk signal low for each of the 11bits, while either the host or the device pulls the data wire low to signal a logic 0 or allows data to float high to signal a logic 1. between transmissions, the bus can be in one of three states: host computer ps/2 mouse left right clk data clk data figure 3-1. ps/2 system diagram
revision 1.0 july/16/1998 4 gl310mc ps/2 2d mouse controller l idle. if clk and data are both high, there is no activity on the bus. l inhibit. if the host is holding clk low, the device is inhibited from transmitting data. however, internal mouse processing continues to occur. l request to send. if the host is holding data low and clk high, it is ready to transmit a command or argument byte to the device. 3.3 output to host the device can transmit a byte to the host whenever the bus is idle. if the bus is inhibited, the device waits for it to leave the inhibit state before transmitting. if there is a host request-to-send, the device receives and processes the host command byte rather than transmitting its own data. if the host holds clk low (inhibit) during a transmission, the device will recognize this within 100 m s and abort the transmission. the device recognizes an inhibit by noting that clk remains low during the high portion of the clock cycle. if the inhibit occurs before the rising edge of the tenth clock (the parity bit ), the transmission is cancelled and will be retried as soon as the inhibit is released. (an ack ($fa) reply to an incoming command or argument byte is simply thrown away if cancelled, although the command being acknowledged is not cancelled.) if the inhibit begins after the tenth clock, the transmission is considered complete and the host must accept the transmitted byte. the host may hold clk low after the transmission, effectively extending clock 11, to inhibit the device while it processes the transmission. in figure 3-2, the clk signal is low for 30-50 m s (t1) and high for 30-50 m s (t2) in each bit cell. data will be valid at least 5 m s before the falling edge (t3) and at least 5 m s after the rising edge (t4) of the clock. 3.3.1 input from host the host signals its intent to transmit a command or argument byte by holding clk low for at least 60 m s, them pulling data low and releasing clk, thus putting the bus into the host request- to-send state. the device checks for this state at least every 10ms (t5). when the device detects a request-to-send, it pulses clk low 11 times to receive a byte. the host can abort the transmission midway through by holding clk low for at least 100 m s. after the tenth clock, the device checks for a valid stop bit (data line high), and responds by pulling data low and clocking one more time (the "line control bit"). the host can then hold clk low within 50 m s (t12) to inhibit the device until the host is ready to receive the reply. if the device finds data low during the stop bit, a framing error has occurred; the device continues to clock until data goes high, then sends a resend to the host as described below. figure 3-2. ps/2 output waveforms t1 t2 t3 t4 start bit bit0 bit1 bit7 parity bit stop bit clk1 clk2 clk3 clk9 clk10 clk11
revision 1.0 july/16/1998 5 gl310mc ps/2 2d mouse controller in figure 3-3, the clk signal is low for 30-50 m s (t6) and high for 30-50 m s (t7) in each bit cell. data is sampled when clk is high, and must be valid no later than 1 m s after the rising edge of the clock (t8>-1 m s. t9>= 0 m s). in the line control bit, data goes low at least 5 m s before the falling edge (t10) and stays low at least 5 m s after the rising edge (t11) of the clock. for each command or argument byte that requires a response, the host waits for the response before sending another byte. the device responds within 20ms, unless inhibited by the host. if the device receives an invalid byte, a byte with incorrect parity, or a framing error, it sends a resend ($fe) response to the host. if the next input from the host is also invalid, the device sends an error ($fc) response. 3.4 power-on reset at power-up, the mouse performs a self-test and calibration, then transmits the completion code $aa and id code $00. if the device fails its self-test, it transmits error code $fc and id code $00.this processing also occurs when a software reset ($ff) command is received. the host should not attempt to send commands to the device until the calibration/self-test is complete. power-on self-test and calibration takes 300-1000ms. self-test and calibration following a software reset command takes 300-500ms. if the host wishes to use the mouse as soon as possible after power-up and is not interested in the $aa, $00 announcement, it can simply put the bus into the "request-to -send" state immediately on power-up. the mouse will respond by clocking in the host's first initialization command as soon as it is ready; this command will override the $aa, $00 announcement. if the host sends a reset ($ff) before the initial $aa, $00 announcement, then the $aa, $00 response to the reset command may be delayed by the full 300-1000ms required for power-on calibration. clk1 clk2 clk10 clk11 clk9 request-to-send bit0 bit1 bit7 parity bit stop bit line control t5 t6 t7 t8 t9 t10 t11 t12 figure 3-3. ps/2 output waveforms
revision 1.0 july/16/1998 6 gl310mc ps/2 2d mouse controller the reset state of the device is as follows: l reported sample rate is 100 samples per second. l reported resolution is 4 counts per mm. l scaling is 1:1. l stream mode is selected. l data reporting is disabled. 3.5 command set after every command, the device responds within 20ms with an ack byte ( $fa) and possibly one or more data bytes. for the resend ($fe) command, the response sometimes does not begin with an ack. for the reset ($ff) command, the device responds with an ack ($fa) within 20ms, then with the completion and id codes ($aa, $00) within 500ms. if the device is in stream mode, the host should disable it before sending a command that requires a response. however, if a command is sent during enable stream mode, the device will not send any further data packets until the responding to the command is finished. if a command is sent during the transmission of a data packet or response to a previous command, the packet in progress is abandoned and the new command is processed instead. the device maintains a count of the amount of x, y motion since the last data packet was sent. any command except resend ($fe) clears the motion accumulators. 3.5.1 standard ps/2 commands the commands described here are standard to all ps/2 pointing devices. as elsewhere in this document, "$" signifies hexadecimal notation. $ff reset. perform a software reset as described above. response is ack ($fa), then $aa, $00 after a calibration delay of 300-500ms. $fe resend . the host sends this command when it detects invalid output from the device. the device retransmits the last packet of data, for example, a three -byte motion data packet, a one-byte response to the read device type ($f2) command, or the two-byte completion- and-id reset response ($aa, $00). the ack ($fa) byte sent to acknowledge a command is not stored in any buffer or resent; however, if the last output from the device was an ack with no additional data bytes, resend responds with an ack. the device will send a resend ($fe) to the host if it receives invalid input from the host. $f6 set default. restore conditions to the initial power-up state. this resets the sample rate, resolution, sealing, and stream mode as described above for power-on reset, and disables the device. $f5 disable. disable stream mode reporting of motion data packets. all other device operations continue as usual.
revision 1.0 july/16/1998 7 gl310mc ps/2 2d mouse controller $f4 enable. begin sending motion data packets if in stream mode. to avoid undesirable bus contention, driver software should send the enable as the very last command in its ps/2 initialization sequence. note that a ps/2 device includes two distinct state bits: the enable/disable flag controlled by commands $f4 and $f5, and the stream/remote flag controlled by commands $ea and $fo. the flags are independent, and both must be set properly (enabled, stream mode) for the device to send motion packets. the intention is that disabled stream mode means the host is not interested in motion packets, while remote mode means the host plans to poll explicitly for motion data. $f3 set sample rate. followed by one argument byte, this command sets the ps/2 "sample rate" parameter to the specified value in samples per second. legal values are 10, 20, 40, 60, 80, 100, and 200 (decimal) samples per second. the mouse records this value and will respond properly to a later status request ($e9) command. $f2 read device type. the response is an ack ($fa) followed by a $00 device id byte. $f0 set remote mode. switch to remote mode, as distinct from the default steam mode. in remote mode, the device sends motion data packets only in response to a read data ($eb) command. $ee set wrap mode. switch into special "echo" or "wrap" mode. in this mode, all bytes sent to the device except reset ($ff) and reset wrap mode ($ec) are echoed back verbatim. no motion data packets are sent in wrap mode. $ec reset wrap mode. if the device is in wrap mode, it returns to its previous mode of operation except that stream mode data reporting is disabled. if the device is not in wrap mode, this command has no effect. $eb read data. the device replies with an ack ($fa) followed by a 3-byte motion data packet as described below. this command may be used in any mode; in remote mode, it is the only way to get a data packet. if the host is polling regularly, it is best to set the device to remote mode. the packet is transmitted even if no motion or button events have occurred. $ea set stream mode. switch to stream mode, the default mode of operation. in this mode, motion data packets are sent to the host whenever finger motion or button events occur and data reporting has been enabled. $e9 status request. response is an ack ($fa), followed by a 3-byte status packet consisting of the following data:
revision 1.0 july/16/1998 8 gl310mc ps/2 2d mouse controller bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 byte 1 0 remote enable scaling 0 left middle right byte 2 0 0 0 0 0 0 resolution byte 3 sample rate remote: 1= remote (polled) mode, 0 = stream mode. enable : 1 = data reporting enabled, 0 =disabled. this bit only has effect in stream mode. scaling: 1 = scaling is 2:1, 0 = scaling is 1:1. left: 1=left button is currently pressed, 0 = released. middle: 1 = middle button is currently pressed, 0 = released. right: 1 = right button is currently pressed, 0 = released. resolution : the current resolution setting, from 0 to 3 as described under set resolution ($e8) below. sample rate : the current sample rate sample rate setting, from 10 to 200 as described under set sample rare ($f3) above. $e8 set resolution. followed by one argument byte, this command sets the ps/2 " resolution" parameter. legal argument values are $00, $01, $02, and $03, corresponding to resolutions of 1, 2, 4, and 8 counts per mm, respectively. $e7 set scaling 2:1. sets the ps/2 "scaling" bit, to enable a non-linear motion gain response. the mouse records this value and will respond properly to a later status request ($e9) command. $e6 set scaling 1:1. clears the ps/2 "scaling" bit, as described above. other if the device receives an invalid command byte, it replies with a resend ($fe) byte. if it immediately receives a second invalid command, it replies with an error ($fc) byte. 3.5.2 extended ps/2 commands for microsoft intellimouse to set the mouse to the extended mode, the driver sends the following command sequence: set sample rate 200 hz ($f3 $c8) set sample rate 100 hz ($f3 $64) set sample rate 80 hz ($f3 $50) for the mouse to change modes, it must receive these commands exactly as shown with no other commands interspersed in the sequence. once the driver sends this sequence, it must determine whether the mouse supports the extended mode, so it will know to expect the extra wheel data that is not a typical part of a ps/2-compatible mouse data packet. once the mouse changes to the extended mode, its device id becomes $03. typically, a ps/2-compatible mouse has an id of $00. immediately after sending the set sample rate sequence, the driver issues a read device type ($f2) command. if the mouse returns an id of $03, then the driver knows a mouse device is attached and expects an extended ps/2- compatible mouse data packet. if the driver doesn't receive a device id of $03 in response to the read device type command, it will issue a reset ($ff) command and start over, treating the device as it would a typical three-button mouse. note that a reset ($ff) command will return a mouse device to its power-up default mode.
revision 1.0 july/16/1998 9 gl310mc ps/2 2d mouse controller 3.6 data reporting the mouse supports one format for motion data packets. the default relative format is compatible with standard ps/2 mice. data packets are sent in response to read data ($eb) commands. if stream mode is selected and data reporting is enabled, data packets are also sent unsolicited whenever finger motion and/or button-state changes occur. during transmission of a motion packet, the individual bytes of the packet will be separated by no more than 10ms (assuming the host does not inhibit the bus). while ps/2 motion packets are lacking in explicit synchronization bits, if the host sees a long delay between bytes it can assume the delay comes at a packet boundary. (similarly, the bytes of the responses to the various ps/2 commands will be separated by no more than 10ms; the one exception is reset ($ff), where the $fa and $aa are separated by a longer calibration delay.) 3.6.1 default packet format in the default relative format, each motion report consists of there bytes. the first byte encodes various status bits, and the other two bytes encode the amount of motion in x and y. bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 byte 1 y ovfl x ovfl y sign x sign 1 middle right left byte 2 x delta byte 3 y delta y ovfl: 1 = y delta value exceeds the range-256? .255, 0 = no overflow. when this bit is set, the reported y delta will be either -256 or +255. x ovfl: 1 = x delta value exceeds the range-256? .255, 0 = no overflow. when this bit is set, the reported y delta will be either -256 or +255. y sign: 1 = y delta value is negative, 0 = y delta is zero or positive. x sign: 1 = x delta value is negative, 0 = y delta is zero or positive. middle: 1= middle button is currently pressed, 0 = released. right: 1= right button is currently pressed, 0 = released. left: 1= left button is currently pressed, 0 = released. x delta : this is the amount of motion that has occurred in the x ( horizontal ) direction since the last motion data report. this byte and the "x sign' bit of byte 1 combine to from a nine-bit signed, two's-complement integer. y delta : this is the amount of motion that has occurred in the y ( vertical ) direction. upward motion is positive, downward is negative.
revision 1.0 july/16/1998 10 gl310mc ps/2 2d mouse controller 3.6.2 extended microsoft intellimouse packet format when mouse devices are in extended mode, they send their mouse data in a 4-byte data packet. the packet is the typical standard ps/2 3-byte packet plus one additional byte containing the wheel data denoted as z in the following table. bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0 byte 1 0 0 y7 x7 1 middle right left byte 2 x delta byte 3 y delta byte 4 z delta
revision 1.0 july/16/1998 11 gl310mc ps/2 2d mouse controller 4. electrical characteristics parameter condition min. typ. max. unit operating voltage 4.0 - 6.0 v operating current fsys=6mhz, no load rosc=10k,cosc=10pf - 1.3 - ma input low voltage for lb, mb, rb - 0 - 0.8 v input high voltage for lb, mb, rb - 3.0 - 5.0 v input low voltage for x1,x2,y1,y2 - 0 - 0.8 v input high voltage for x1,x2,y1,y2 - 3.0 - 5.0 v x1,x2,y1,y2 sink current vdd=5v, vol=0.5v - 4 - ma x1,x2,y1,y2 source current vdd=5v, voh=4.5v - - 4 - ma clk, data sink current vdd=5v, voh=0.5v - 4 - ma clk, data source current vdd=5v, voh=4.5v - - 4 - ma pull-high resistance of clk, data - - 5 - k w pull-high resistance of rb, mb, lb - - 10 - k w pull-low resistance of x1,x2,y1,y2 - - 8 - k w
revision 1.0 july/16/1998 12 gl310mc ps/2 2d mouse controller 5. package dimension in mils dimension in mils symbol min nom max min nom max a -- 130 -- -- 3.302 -- a1 59 60 61 1.499 1.524 1.549 b -- 18 -- -- 0.457 -- b1 -- 60 -- -- 1.524 -- c -- 10 -- -- 0.254 -- d 740 750 760 18.796 19.050 19.304 e1 259 260 -- 6.579 6.604 -- f 290 300 310 7.366 7.620 7.874 l -- 130 -- -- 3.302 -- l1 -- 20 -- -- 0.508 -- e -- 100 -- -- 2.540 -- eb 345 355 365 8.763 9.017 9.271 q 4 o 5.5 o 7 o 4 o 5.5 o 7 o figure 5-1. package outline dimension for p-dip 16 pin 15" (2x) 5" (2x) d e b b1 a1 a l1 l f e1 eb c 15' (4x)
revision 1.0 july/16/1998 13 gl310mc ps/2 2d mouse controller 6. application circuit r1 ,r2 and c1 are adjustable x1 x2 y1 y2 lb mb rb ps2/dat x1 x2 y1 y2 lb mb rb gnd vdd rc/clk nc1 nc2 nc3 nc4 ps2/dat ps2/clk ps2/clk vcc vcc vcc r1 r c1 c c2 0.1u u1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 GL310MC2D vcc x1 x2 y1 y2 r2 330 detector detector d1 led d2 led lb mb rb sw1 sw2 sw3
revision 1.0 july/16/1998 14 gl310mc ps/2 2d mouse controller contents 1. features ................................ ................................ ................................ ................................ ........... 1 2. pin configuration ................................ ................................ ................................ ............................. 2 3. ps/2 protocol ................................ ................................ ................................ ................................ ... 3 3.1 electrical interface ................................ ................................ ................................ .................. 3 3.2 byte transmission ................................ ................................ ................................ .................... 3 3.3 output to host ................................ ................................ ................................ ......................... 4 3.3.1 input from host ................................ ................................ ................................ ............ 4 3.4 power-on reset ................................ ................................ ................................ ........................ 5 3.5 command set ................................ ................................ ................................ .......................... 6 3.5.1 standard ps/2 commands ................................ ................................ ............................. 6 3.5.2 extended ps/2 commands for microsoft intellimouse ................................ .................. 8 3.6 data reporting ................................ ................................ ................................ ......................... 9 3.6.1 default packet format ................................ ................................ ................................ .. 9 3.6.2 extended microsoft intellimouse packet format ................................ ......................... 10 4. electrical characteristics ................................ ................................ ................................ ............... 11 5. package ................................ ................................ ................................ ................................ ......... 12 6. application circuit ................................ ................................ ................................ ......................... 13


▲Up To Search▲   

 
Price & Availability of GL310MC2D

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X